package com.jsh.erp.datasource.vo;

import com.jsh.erp.datasource.entities.Invoice;
import com.jsh.erp.datasource.entities.InvoiceItem;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 发票视图对象（jony_invoice）VO类
 *
 * 用于展示和传递发票相关信息，通常用于展示层（如前端接口）
 * 该类包含发票的基本信息，包含发票编号、类型、金额等信息
 *
 * @Author Yik
 * @Date 2025-01-08
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class InvoiceVo {

    private Long id;
    private String invoiceNumber;
    private String invoiceType;
    private String invoiceTypeValue;
    private Long customerSupplierId;
    private String customerSupplierValue;
    private Date invoiceDate;
    private Long orderId;
    private String deliveryNoteId;
    private String deliveryNoteCode;
    private String reportNo;
    private String currency;
    private BigDecimal subtotal;
    private BigDecimal totalAmount;
    private String createdBy;
    private Date createdAt;
    private Date updatedAt;
    private Long invoiceAccount;
    private String invoiceAccountValue;
    private String invoiceRemark;
    private Long tenantId;
}